/*

 */

package DALFactory;

/**
 * 数据层抽象工厂接口<br>
 * 逻辑层（Control包）通过使用这个接口来访问数据库<br>
 * 数据层的核心就是这个抽象工厂<br>
 * 其有两个具体实现：1、MongodbFactory<br>
 *                 2、SQLFactory
 * 使用这个接口来实现对数据层的封装，实现对NoSQL和SQL数据库的切换<br>
 * @author kocio
 */
public interface IDALFactory
{
    /**
     * 用户登录验证
     * @param UserName 用户名
     * @param Passwd 密码
     * @return true 表明用户登录成功<br>false表明登录失败
     */
   public ILogin Login(String UserName,String Passwd);
    /**
     * 获得IDataMapper实现类
     * @return IDataMapper接口的实现类
     */
   public IDataMapper CreateDataMapper();
    /**
     * 获得IDLStatement实现类
     * @return  IDLStatement实现类
     */
   public IDALStatement CreateStatement();
    /**
     * 获得IDataMapper2实现类
     * @return IDataMapper实现类
     */
   public IDataMapper2 CreateDataMapper2();
    /**
     * 获得IDataMapper3实现类
     * @return IDataMapper3实现类
     */
   public IDataMapper3 CreateDataMapper3();
    /**
     * 获得IDataProcess实现类
     * @return IDataProcess实现类
     */
   public IRouteMapper CreateRouteMapper();
   
   public IDataProcess CreateDataProcess();
   
   public IDataCommentMapper CreateCommentMapper();
   
   public IDataSearchLogMapper CreatDataSearchLogMapper();

}
